General-purpose search engines have become reasonably good at providing meaningful search results, particularly in domains of knowledge that are not highly technical and/or specialized. Some general-purpose search engines employ “semantic” search techniques in an attempt to improve search accuracy by understanding searcher intent and the contextual meaning of terms as they appear in the searchable dataspace. Generally, semantic search systems may consider various signals including context of search, location, intent, variation of words, synonyms, concept matching and natural language queries to provide relevant search results.
Many search engines, semantic or otherwise, use various Natural language processing (“NLP”) techniques to perform operation such as tokenization, parsing, part-of-speech tagging, named entity recognition, and the like. While many existing NLP parsers do a reasonably good job at parsing “ordinary” texts in a given language, highly specialized and/or technical language is frequently misinterpreted by general-purpose parsers.
Because documents pertaining to many domains of knowledge frequently use specialized and/or technical language, existing NLP techniques (as well as the search engines that rely on them) often provide inaccurate and/or suboptimal results when searching across a specialized domain of knowledge.